<?php
session_cache_limiter('nocache');
session_start();
/* SVN FILE: $Id: index.php 4450 2007-02-05 05:18:05Z phpnut $ */
/**
 * Short description for file.
 *
 * Long description for file
 *
 * PHP versions 4 and 5
 *
 * CakePHP(tm) :  Rapid Development Framework <http://www.cakephp.org/>
 * Copyright 2005-2007, Cake Software Foundation, Inc.
 *								1785 E. Sahara Avenue, Suite 490-204
 *								Las Vegas, Nevada 89104
 *
 * Licensed under The MIT License
 * Redistributions of files must retain the above copyright notice.
 *
 * @filesource
 * @copyright		Copyright 2005-2007, Cake Software Foundation, Inc.
 * @link				http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
 * @package			cake
 * @subpackage		cake.app.webroot
 * @since			CakePHP(tm) v 0.2.9
 * @version			$Revision: 4450 $
 * @modifiedby		$LastChangedBy: phpnut $
 * @lastmodified	$Date: 2007-02-04 23:18:05 -0600 (Sun, 04 Feb 2007) $
 * @license			http://www.opensource.org/licenses/mit-license.php The MIT License
 */
/**
 * Do not change
 */
	if (!defined('DS')) {
		define('DS', DIRECTORY_SEPARATOR);
	}
/**
 * These defines should only be edited if you have cake installed in
 * a directory layout other than the way it is distributed.
 * Each define has a commented line of code that explains what you would change.
 *
 */
	if (!defined('ROOT')) {
		//define('ROOT', 'FULL PATH TO DIRECTORY WHERE APP DIRECTORY IS LOCATED DO NOT ADD A TRAILING DIRECTORY SEPARATOR';
		//You should also use the DS define to seperate your directories
		define('ROOT', dirname(dirname(dirname(__FILE__))));
	}
	if (!defined('APP_DIR')) {
		//define('APP_DIR', 'DIRECTORY NAME OF APPLICATION';
		define('APP_DIR', basename(dirname(dirname(__FILE__))));
	}
/**
 * This only needs to be changed if the cake installed libs are located
 * outside of the distributed directory structure.
 */
	if (!defined('CAKE_CORE_INCLUDE_PATH')) {
		//define ('CAKE_CORE_INCLUDE_PATH', FULL PATH TO DIRECTORY WHERE CAKE CORE IS INSTALLED DO NOT ADD A TRAILING DIRECTORY SEPARATOR';
		//You should also use the DS define to seperate your directories
		define('CAKE_CORE_INCLUDE_PATH', ROOT);
	}
///////////////////////////////
//DO NOT EDIT BELOW THIS LINE//
///////////////////////////////
	if (!defined('WEBROOT_DIR')) {
		define('WEBROOT_DIR', basename(dirname(__FILE__)));
	}
	if (!defined('WWW_ROOT')) {
		define('WWW_ROOT', dirname(__FILE__) . DS);
	}
	if (!defined('CORE_PATH')) {
		if (function_exists('ini_set')) {
			ini_set('include_path', CAKE_CORE_INCLUDE_PATH . PATH_SEPARATOR . ROOT . DS . APP_DIR . DS . PATH_SEPARATOR . ini_get('include_path'));
			define('APP_PATH', null);
			define('CORE_PATH', null);
		} else {
			define('APP_PATH', ROOT . DS . APP_DIR . DS);
			define('CORE_PATH', CAKE_CORE_INCLUDE_PATH . DS);
		}
	}
	require CORE_PATH . 'cake' . DS . 'bootstrap.php';
	if (isset($_GET['url']) && $_GET['url'] === 'favicon.ico') {
	} else {
		if (isset($_SESSION['usuariosession'])) { 
			//EL USUARIO ESTA LOGUEADO
			if (!isset($_GET['url'])){ 
				//NO SE ESPECIFICO RUTA ADICIONAL, VA AL INDICE
				$Dispatcher = new Dispatcher();
				$Dispatcher->dispatch("/index");
			} else {
				//SE ESPECIFICO RUTA ADICIONAL
				if ($_GET['url'] === 'users/login'){
					//NO PERMITO QUE VUELVA AL LOGIN, DEBE HACER LOGOUT
					$Dispatcher = new Dispatcher();
					$Dispatcher->dispatch("/index");
				} else {
					$Dispatcher = new Dispatcher(); 
					$Dispatcher->dispatch($url);
				}
			}
		} else { 
			//EL USUARIO NO ESTA LOGUEADO
			if (isset($_GET['url']) && $_GET['url'] === 'users/logout') { 
				//SI NO ESTOY LOGUEADO NO MUESTRO LOGOUT
				$Dispatcher = new Dispatcher();
				$Dispatcher->dispatch("users/login");	
			} else {
				//SI NO ESTOY LOGUEADO, MUESTRO LOGUIN Y LE PASO LA RUTA A LA CUAL IBA
				if (isset($_GET['url']) && $_GET['url'] === 'users/login'){
					//SI LA RUTA YA ERA LOGIN, NO PASO PARAM EXTRA
				  $extra = array('bare' => 0, 'return' => 0);
				} else {
				  $extra = array('redirectURL' => $url, 'bare' => 0, 'return' => 0);
				}
				$Dispatcher = new Dispatcher();
			  $extra = array('redirectURL' => $url, 'bare' => 0, 'return' => 0);
				$Dispatcher->dispatch("users/login", $extra);
			}
		}
	}
	if (Configure::read() > 0) {
		echo "<!-- " . round(getMicrotime() - $TIME_START, 4) . "s -->";
	}
?>